Advances in information technology continue to bring challenges to IT management. A push for IT management comes from the dynamic needs of companies as they face growth and development. Growing businesses often need to manage access of particular information among employees. This is especially true for companies who utilize modern enterprise websites that employ hierarchical navigation trees. Modern enterprise web sites typically employ hierarchical navigation trees to access certain pages and functionalities. For example, a modern enterprise may place employees with certain navigational restrictions within their company intranet site. Often, companies with a large number of employees may have a massive hierarchical navigation tree in the order of, for example, 1000 or more and may restrict access to some navigation menu items or branches to certain groups of users. Because internal information may be sensitive for different employees associated with a company, a company may want to ensure that restricted access to information is enforced. Difficulties may arise when companies seek to update information in the tree that may affect permissions for particular user groups.
One approach may involve invalidating the entire navigation tree from the cache, letting subsequent access to the cache destroy the cache, and reconstructing the entire cache for the menu tree item. When the navigation tree hierarchy is not too deep and there are not too many different user group permissions, this method may suffice. But it is far from adequate when dealing with a massive navigation menu item tree and 1000 or more user groups with potentially different permissions to access each of these nodes or branches, since users accessing the system may be forced to wait for minutes just to access one page in the website, while the system is rebuilding the tree cache. This can be costly and time consuming. Users may spend minutes trying to access a webpage while updating and repermissioning is being completed. This is also true for changes in shared information between various websites.